
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
	<link rel=stylesheet href='include/hoj.css' type='text/css'>
</head>
<body>
<center>
<div style="width:90%; text-align:left">
<img src="image/logo.png"/>
</div>
<table width=96%> 
	<tr align="center" class='hd' valign="top">
				<th><a href="faqs.php">F.A.Qs</a></th>
		<th><a href="./bbs.php">Web Board</a></th>
		<th><a href="./">Home</a></th>
		<th><a href="./problemset.html">ProblemSet</a></th>
		<th><a href="./status.php">Status</a></th>
		<th><a href="./ranklist.php">Ranklist</a></th>
		<th><a href="./contest.php">Contest</a></th>
		<th><a href=loginpage.php>Login</a></th><th><a href=registerpage.php>Register</a></th>	</tr>
</table>
</center>
<center>
<div class="notice">
	<div>
		<B>Notice:</B>鉴于种种原因，本OJ自下周星期一（3月5号）开始不再全面开放，请各位做好善后事宜，谢谢合作。	</div>
</div>
</center>
</div>
<title>Problem 1374. -- [Baltic2003]Register -- 衡阳八中OJ离线版-2012-02-29</title><center><h2>1374: [Baltic2003]Register</h2><span class=green>Time Limit: </span>5 Sec&nbsp;&nbsp;<span class=green>Memory Limit: </span>64 MB<br><span class=green>Submit: </span>1&nbsp;&nbsp;<span class=green>Solved: </span>1<br>[<a href='submitpage.php?id=1374'>Submit</a>][<a href='problemstatus.php?id=1374'>Status</a>][<a href='bbs.php?id=1374'>Discuss</a>]</center><h2>Description</h2><div class=content>在编译器理论中，一个表达式是使用一棵树来表示的，其实根为运算符，子节点为分解出的子表达式。在实际编译时，一个运算符只有当它所有子节点代表的表达式都求出以后，它才能够做相应的运算。
编译的时候，内存里有一种特殊的储存器“Register”，如果将得出的表达式储存到Register中，可以加快存取速度，但是由于Register数量有限，不能存入的表达式就只好用主Memory来存储，这样的话就会造成时间上的浪费。所以决定如何使用Register可以提高编译的效率。
具体的编译过程如下：

1．	对于一个非叶子节点，选任意一个子节点，进行运算（递归）
2．	计算完以后，对于计算出的数值，可以选择存入Register或者存入主Memory。
a)	 若存入Register，那么存取时间不计，但是在计算其他子节点表达式时，这个Register是不可用的。
b)	若存入主Memory，存入需要Cs的时间，以后如果要调用这个值，还需要Cl的时间来调用。
3．重新返回1，直到所有的子节点表达式都处理完毕。
4．这个时候，将所有存入主Memory的数值从主Memory中读入到Register中，一个数值占用一个Register。
5．将所有Register中的数值按照根节点代表的运算符进行运算，得出结果。
6．然后将所有使用到的Register清空。

所有的叶子节点代表的是数值，且必须从主Memory中读入，每种运算符计算时使用的时间各有不同。现要你决定编译的顺序和Register的使用，使得总运算时间最少。


</div><h2>Input</h2><div class=content>N（Register个数）
Cl,Cs
一个数Kx，表示根节点的子节点个数。
如果Kx>0，那么x就是一个非叶子节点，代表一个运算符，接下来一个数Cx代表这个运算符要使用的时间。
然后接下来就使用相同的格式来描述x的Kx个子节点。

</div><h2>Output</h2><div class=content>总计算时间
</div><h2>Sample Input</h2>
			<div class=content><span class=sampledata>2<br />
3 2<br />
2<br />
10<br />
2<br />
15<br />
0<br />
0<br />
2<br />
5<br />
0<br />
0<br />
<br />
</span></div><h2>Sample Output</h2>
			<div class=content><span class=sampledata>47<br />
</span></div><h2>HINT</h2>
			<div class=content><p><img border="0" src="images/1374_1.jpg"></p></div><h2>Source</h2>
			<div class=content><p><a href='problemset.html?search='></a></p></div><center>[<a href='submitpage.php?id=1374'>Submit</a>][<a href='problemstatus.php?id=1374'>Status</a>][<a href='bbs.php?id=1374'>Discuss</a>]</center>﻿<br>

<a href="./"><span class=red>HOME</span></a>
<a href="javascript:history.go(-1)"><span class=red>Back</span></a>

<hr>
<center>
	<div class="footer">
			<a href=setlang.php?lang=ko>한국어</a>&nbsp;
		<a href=setlang.php?lang=cn>中文</a>&nbsp;
		<a href=setlang.php?lang=fa>فارسی</a>&nbsp;
		<a href=setlang.php?lang=en>English</a>&nbsp;
		<a href=setlang.php?lang=th>ไทย</a>
	<br>		<div>版权所有 &copy;2008-2012 WaterPark Organization. | <script src="http://s21.cnzz.com/stat.php?id=2982771&web_id=2982771" language="JavaScript"></script>
</div>
		<div>Based on opensource project <a href="http://hustoj.googlecode.com">hustoj</a>.</div>
	</div>
</center>
</body>
</html>
